The invention relates to the field of electronic systems, and in particular to providing data processing web services (e.g. digital imaging web services) across a distributed, resource-oriented computing environment.
As used herein, a web service refers to a software service or system designed to support interoperable machine-to-machine interaction over a network (e.g., via HTTP (R. Fielding et. al., “Hypertext Transfer Protocol—HTTP/1.1”, RFC2616 (Internet Engineering Task Force, 1999)), FTP (J. Postel and J. Reynolds, “File Transfer Protocol”, RFC959 (Internet Engineering Task Force, 1985)), etc.). Web services capable of processing requests without the need for a server to persist information (or state) between requests from a client are considered to be “stateless” web services. REST (Representational State Transfer) and Computational REST (or CREST) are examples of stateless architectures for web services.
Data processing pipelines (e.g., digital imaging pipelines) are traditionally constructed from various component blocks. For example, in digital imaging pipelines, the component blocks might include image analysis, noise reduction, scaling, color adjustment, etc. These component blocks are typically deployed in rigid architectures that are tailored for specific applications and predefined tasks. These pipelines may optimize one or more goals, such as providing efficient processing, minimal memory consumption, etc. Software implementing these pipelines ranges from machine code for specialized hardware to procedural, modular, or object-oriented frameworks in more general-purpose languages.